package com.minsu.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class ProductionOrder {
    // 主键，自增保证唯一
    private Integer orderId;
    
    // 生产单号（全局唯一标识）
    private String productionOrderNo;

    // 炉料批次（格式：YYYYMM+3位序号，如202405001）
    private String batchNo;

    // 熔炼温度（浮点数，如1500.50）
    private BigDecimal meltingTemperature;

    // 孕育剂添加量（保留2位小数）
    private BigDecimal inoculantAmount;

    // 浇注温度（浮点数，如1300.20）
    private BigDecimal pouringTemperature;

    // 产品合格率（如0.95代表95%）
    private BigDecimal qualificationRate;

    // 生产时间（关联炉料出库时间）
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date productionTime;

    // 入库时间
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date inTime;

    // 自动填充创建时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createdAt;

    // 修改时自动更新时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updatedAt;

    // 炉料明细列表
    private List<ProductionOrderDetail> details;
    //'产品名称
    private String productName;
    //孕育剂名称
    private String inoculantName ;
}
